using System;
using System.Collections.Generic;
using Volo.Abp.Application.Dtos;
using System.ComponentModel.DataAnnotations;

namespace Business.InventoryQuantityManagement.Dto
{
    public class InventoryQuantityDto : EntityDto<Guid?>
    {
        
        /// <summary>
        /// 商品ID
        /// </summary>
        [Required]
        public string ProductID { get; set; }
        
        /// <summary>
        /// 库存单位
        /// </summary>
        [Required]
        public string Unit { get; set; }
        
        /// <summary>
        /// 可用库存
        /// </summary>
        [Required]
        public string AvailableInventory { get; set; }
        
        /// <summary>
        /// 最大库存数量
        /// </summary>
        [Required]
        public string MaxStock { get; set; }
        
        /// <summary>
        /// 销售在途
        /// </summary>
        [Required]
        public string SellingInTransit { get; set; }
        
        /// <summary>
        /// 库位ID
        /// </summary>
        [Required]
        public string StorageLocationId { get; set; }
        
        /// <summary>
        /// 在途汇总
        /// </summary>
        [Required]
        public string TotalInTransit { get; set; }
        
        /// <summary>
        /// 实际库存
        /// </summary>
        [Required]
        public string ActualInventory { get; set; }
        
        /// <summary>
        /// 调拨在途
        /// </summary>
        [Required]
        public string TransferringInTransit { get; set; }
        
        /// <summary>
        /// 最后更新库存时间
        /// </summary>
        [Required]
        public string LastUpdated { get; set; }
        
        /// <summary>
        /// 采购在途
        /// </summary>
        [Required]
        public string PurchasingInTransit { get; set; }
        
        /// <summary>
        /// 冻结库存
        /// </summary>
        [Required]
        public string FrozenInventory { get; set; }
        
        /// <summary>
        ///  区域ID
        /// </summary>
        [Required]
        public string AreaId { get; set; }
        
        /// <summary>
        /// 库区ID
        /// </summary>
        [Required]
        public string WarehouseAreaId { get; set; }
        
        /// <summary>
        /// 加工单在途
        /// </summary>
        [Required]
        public string ProcessingOrderInTransit { get; set; }
        
        /// <summary>
        /// 仓库ID
        /// </summary>
        [Required]
        public string WarehouseID { get; set; }
        
        /// <summary>
        /// 其他在途
        /// </summary>
        [Required]
        public string OtherInTransit { get; set; }
        
        /// <summary>
        ///  锁定库存
        /// </summary>
        [Required]
        public string LockedInventory { get; set; }
        
    }
}